// let grade = {
//     'name': 'ycd',
//     'age': 25,
//     "sex": "男"
// }

// // 对对象的索引进行循环：
// for (let key of Object.keys(grade)) {
//     console.log(key);
// }

// // 对对象的值进行循环：
// for (let val of Object.values(grade)) {
//     console.log(val);
// }
// // entries是对键值对的遍历：
// // for (let [index, elem] of Object.entries(grade)) {

// //     console.log(index, elem);
// // }
// // Object.entries() 可以把一个对象的键值以数组的形式遍历出来， 结果和for... in 一致， 但不会遍历原型属性。

// console.log(Object.entries(grade));

// const obj = {
//     foo: 'bar',
//     baz: 'abc'
// };
// console.log(Object.entries(obj)); // [['foo', 'bar'], ['baz', 'abc']]



// const arr = [1, 2, 3];
// console.log(Object.entries(arr)); // [['0', 1], ['1', '2'], ['2', '3']]


// const arr1 = [{
//     a: 1
// }, 2, 3];
// console.log(Object.entries(arr1)); // [['0', { a: 1 }], ['1', '2'], ['2', '3']]

// es5补白：
// for (let i = 0; i < 32; i++) {
//     if (i < 10) {
//         console.log(`0${i}`);

//     } else {
//         console.log(i);
//     }
// }

// es6补白：用于日期补白等
// for (let i = 1; i < 320; i += 10) {
//     // padStart函数参数，第一个，字符串位数，第二个不够补充什么
//     console.log(i.toString().padStart(3, '0'));
// }


// for (let i = 1; i < 32000; i += 1000) {
//     // padStart函数参数，第一个，字符串位数，第二个不够补充什么
//     console.log(i.toString().padStart(5, '*#'));
// }

// 后补：用于金额一类的：
for (let i = 1; i < 320; i += 10) {
    // padStart函数参数，第一个，字符串位数，第二个不够补充什么
    console.log(i.toString().padEnd(3, '0'));
}